package cn.tedu.hospitalgroupproject.server.content.dao.persist.repository;

import cn.tedu.hospitalgroupproject.server.common.pojo.vo.PageData;
import cn.tedu.hospitalgroupproject.server.content.pojo.entity.Doctor;
import cn.tedu.hospitalgroupproject.server.content.pojo.entity.DoctorTitleAppLimit;
import cn.tedu.hospitalgroupproject.server.content.pojo.vo.DoctorStandardVO;
import cn.tedu.hospitalgroupproject.server.content.pojo.vo.DoctorTitleAppLimitListVO;
import cn.tedu.hospitalgroupproject.server.content.pojo.vo.DoctorTitleAppLimitStandardVO;

public interface IDoctorTitleAppLimitRepository {

    /*
    * 插入医生级别预约挂号数量上限数据*/
    int insert(DoctorTitleAppLimit doctorTitleAppLimit);

    /*根据职称ID删除对应的职称数据*/
    int deleteById(Long id);

    /**
     * 根据ID修改职称预约上限数据
     *
     * @param doctorTitleAppLimit 封装了被修改数据的ID和新数据的对象
     * @return 受影响的行数
     */
    int updateById(DoctorTitleAppLimit doctorTitleAppLimit);

    /*根据指定ID获取职称权限数据*/
    DoctorTitleAppLimitStandardVO getStandardById(Long id);
    /*
    * 根据职称查找记录*/
    DoctorTitleAppLimitStandardVO selectByTitleName(String doctorTitle);
    /**
     * 查询医生职称列表
     *
     * @param pageNum  页码
     * @param pageSize 每条记录数
     * @return 医生职称列表的分页数据
     */
    PageData<DoctorTitleAppLimitListVO> list(Integer pageNum, Integer pageSize);

}
